<!DOCTYPE html>
<html lang="zh-Hans">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>双飞翼布局</title>
    <style>
        * {
            margin: 0px;
            padding: 0px;
            font-size: 28px;
            color: #666;
            font-weight: bold;
        }


        header,
        footer {
            width: 100%;
            height: 80px;
            background-color: lightgrey;
            text-align: center;
        }

        .container {            
            height: 500px;
            background-color: rgba(216, 216, 216, 0.5);
        }

        .container>div {
            float: left;
            height: 100%;
        }

        .middle {
            width: 100%;
            background-color: coral;
        }
        .container .middle .main {
            height: 100%;
            margin: 0 300px 0 200px;
        }

        .left {
            width: 200px;
            background-color: rgba(255, 192, 203, 0.39);
            margin-left: -100%;
        }

        .right {
            width: 300px;
            background-color: rgba(255, 0, 221, 0.342);
            margin-left: -300px;
        }

        .clearfix::after {
            content: '';
            display: block;
            /*相当于添加了一个内容为空的文本段落*/
            clear: both;
            /*在dom中的效果是，调试界面只能在此元素内看到一个::after字符*/
            visibility: hidden;
            /*元素占用的空间仍然存在*/
            height: 0px;
            /*就算宽高都为0，文本还是会显示*/

            font-size: 0;
            /*再写这个可能是为了万无一失吧*/
        }

        .clearfix {
            *zoom: 1;
        }

        /*这是针对于IE6的，因为IE6不支持::after伪元素，这个神奇的zoom:1让IE6的元素可以清除浮动来包裹内部元素。具体意思的话，不用深究，听说微软的工程师自己都无法解释清楚。*/
    </style>
</head>

<body>
    <header>header</header>
    <div class="container clearfix">
        <div class="middle">
            <div class="main">
                <p>middle</p>
                <p>双飞翼布局和圣杯布局几乎一样，区别在于处理middle中被遮挡的部分。双飞翼是在middle中再放一个div用来显示内容，为其设置margin。
                      </p>
            </div>
        </div>
        <div class="left">left</div>
        <div class="right">right</div>
    </div>

    <footer>footer</footer>
</body>

</html>